package chap6.task6;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;

/**
 * Create by IntelliJ IDEA
 *
 * @author: jsonor
 * @date-Time: 2018/5/4 10:19
 * @description:
 */
public class CharCode {
  /**
   * 1、手动操作：d盘新建a.txt，写入中文
   *
   * 2、用Java代码实现文件拷贝（将d盘a.txt文件拷贝到当前目录），会出现乱码,
   *
   *  3、利用转换流可以解决乱码问题
   */
  public static void main(String[] args) throws Exception {
    /*
    * 1、D盘的a.txt是GBK编码，用转换流（指定GBK编码）
    * 2、在使用字符缓冲流 一次读写一行文本*/
    //创建转换流对象：参数，字节数对象，编码格式
    InputStreamReader isr=new InputStreamReader(new FileInputStream("d:\\a.txt"),"gbk");
    OutputStreamWriter osw=new OutputStreamWriter(new FileOutputStream("banana"),"UTF-8");

    //利用字符缓冲流实现一次读写一行文本
    BufferedReader br=new BufferedReader(isr);
    BufferedWriter bw=new BufferedWriter(osw);

    String line=null;
    while((line=br.readLine())!=null){
      bw.write(line);
      bw.newLine();
    }
    br.close();
    bw.close();
    isr.close();
    osw.close();

  }
}
